Remote on-demand access to computer and communication network resources, including Internet access is becoming more widespread. With the Internet becoming increasingly popular, more network users are able to connect to a remote server through any device with an internet connection. Users are able to connect to the Internet from home computers, laptops, tablets, smart phones, e-book readers, and any other mobile Internet device. When connected to the internet, many users are downloading or streaming large amounts of data e.g. when watching a movie.
The growing demand for TCP/IP services over mobile networks, including streaming data rich content such as video, has created enormous bandwidth and data traffic requirements. Caching of data rich content can be an effective method for reducing the traffic load on mobile networks.
While caching data based on Uniform Resource Locators (URLs) was an effective method, modern websites and video content providers are using dynamic URLs for their content. Therefore, a URL alone cannot be used to categorize and/or classify content; content data in addition to metadata associated with the content must be analyzed for a robust caching decision algorithm.
The simplest and most straightforward caching systems are centralized within the network and employ centralized storage architecture. Shortcomings of such systems include the high cost of a robust central storage unit, data traffic congestion and limited expansion options. A more ideal caching system includes multiple caching units with adaptable storage options. Caching units installed within the network can operate within specific data load zones and can adapt to balance the caching load based on real-time caching requests. A cloud storage option allows for data to be stored and accessed from any point within the network. As the network grows, the caching system can grow with additional relatively inexpensive caching units.
There is thus a need in the field of caching systems for improved methods, circuits, devices, systems and associated computer executable code for distributed content caching and delivery.